from page.xitongbushu.xt_tjyh_kj_page import AddUserKuaijiePage
import unittest
from cases.base_case import BaseCase
from page.index_page import IndexPage
from page.xitongbushu.xt_zzjg_page import OrganizationPage
from page.xitongbushu.xt_tjyh_yx_page import AddUserYouxiangPage
from tools.sjqd_way import read_data_from_excel
from config.config import DATA_PATH
import os

class AddUser(BaseCase):

    # 第5条用例
    def test_tjyh_youxiang_into(self):
        gr = IndexPage(self.driver)
        gr.click_geren_btn()
        # 进入组织架构
        zz = OrganizationPage(self.driver)
        zz.zzjg_into()
        # 进入添加用户
        zz.zzjg_tjyh()
        # 跳转邮箱添加
        zz.zzjg_yxtj()

        # 断言跳转成功
        text = '*邮箱邀请：输入用户邮箱等信息后，添加者需要邮箱验证激活后才可以登录'
        kj=AddUserKuaijiePage(self.driver)
        self.assertEqual(text,kj.tjyh_dy_youxiangtiaozhuan())

        # 第6条用例
    def test_tjyh_kj_quanbu(self):
        # 引入数据文件
        datas = read_data_from_excel(os.path.join(DATA_PATH,'datas.xls'),'快捷添加用户')
        name,mima = datas[0]
        gr = IndexPage(self.driver)
        gr.click_geren_btn()
        # 进入组织架构
        zz = OrganizationPage(self.driver)
        zz.zzjg_into()
        # 进入添加用户
        zz.zzjg_tjyh()
        # 实例化
        kj = AddUserKuaijiePage(self.driver)
        # 输入数据
        kj.tjyh_kj_yhm(name) #用户名
        kj.tjyh_kj_mm(mima) #密码
        kj.tjyh_kj_yhlb()#用户类别
        kj.tjyh_kj_bm()#部门
        kj.tjyh_kj_gw()#岗位
            # 保存
        kj.tjyh_kj_baocun()
        # 断言
        text='添加成功'
        self.assertIn(text,kj.tjyh_yd_cg())


            # 第7条用例

    def test_tjyh_kj_mmweikong(self):
        # 引入数据文件
        datas = read_data_from_excel(os.path.join(DATA_PATH, 'datas.xls'), '快捷添加用户')
        name, mima = datas[1]
        gr = IndexPage(self.driver)
        gr.click_geren_btn()
        # 进入组织架构
        zz = OrganizationPage(self.driver)
        zz.zzjg_into()
        # 进入添加用户
        zz.zzjg_tjyh()
        # 实例化
        kj = AddUserKuaijiePage(self.driver)
        # 输入数据
        kj.tjyh_kj_yhm(name)  # 用户名
        kj.tjyh_kj_yhlb()  # 用户类别
        kj.tjyh_kj_bm()  # 部门
        kj.tjyh_kj_gw()  # 岗位
        # 保存
        kj.tjyh_kj_baocun()
        # 断言
        text = '请输入密码'
        self.assertIn(text, kj.tjyh_dy_mimaweikong())

        # 第8条用例

    def test_tjyh_kj_quxiao(self):
        gr = IndexPage(self.driver)
        gr.click_geren_btn()
        # 进入组织架构
        zz = OrganizationPage(self.driver)
        zz.zzjg_into()
        # 进入添加用户
        zz.zzjg_tjyh()
        # 实例化
        kj = AddUserKuaijiePage(self.driver)

        # 点击取消
        kj.tjyh_kj_quxiao()
        # 断言
        url = 'http://192.168.1.25/crm/index.php?m=user'
        self.assertEqual(url,kj.get_current_url())

        # 第9条用例

    def test_tjyh_kj_into(self):
        gr = IndexPage(self.driver)
        gr.click_geren_btn()
        # 进入组织架构
        zz = OrganizationPage(self.driver)
        zz.zzjg_into()
        # 进入添加用户
        zz.zzjg_tjyh()
        # 实例化
        kj = AddUserKuaijiePage(self.driver)

        # 断言
        url = 'http://192.168.1.25/crm/index.php?m=user&a=add'
        self.assertEqual(url,kj.get_current_url())

# 第10条用例
    def test_tjyh_yx_quanbushuren(self):
        # 引入数据文件
        datas = read_data_from_excel(os.path.join(DATA_PATH, 'datas.xls'), '邮箱添加用户')
        name, email = datas[0]
        gr = IndexPage(self.driver)
        gr.click_geren_btn()
        # 进入组织架构
        zz = OrganizationPage(self.driver)
        zz.zzjg_into()
        # 进入添加用户
        zz.zzjg_tjyh()
        # 跳转邮箱添加
        zz.zzjg_yxtj()
        # 实例化
        yx = AddUserYouxiangPage(self.driver)

        # 输入数据
        yx.tjyh_yx_yhm(name) #用户名
        yx.tjyh_kj_yx(email) #邮箱
        yx.tjyh_kj_yhlb()#用户类别
        yx.tjyh_kj_bm()#部门
        yx.tjyh_kj_gw()#岗位
            # 保存
        yx.tjyh_kj_baocun()

        # 断言
        text = '添加成功'
        kj = AddUserKuaijiePage(self.driver)
        self.assertIn(text, kj.tjyh_yd_cg())

        # 第11条用例

    def test_tjyh_yx_yxweikong(self):
        # 引入数据文件
        datas = read_data_from_excel(os.path.join(DATA_PATH, 'datas.xls'), '邮箱添加用户')
        name, email = datas[1]
        gr = IndexPage(self.driver)
        gr.click_geren_btn()
        # 进入组织架构
        zz = OrganizationPage(self.driver)
        zz.zzjg_into()
        # 进入添加用户
        zz.zzjg_tjyh()
        # 跳转邮箱添加
        zz.zzjg_yxtj()
        # 实例化
        kj = AddUserYouxiangPage(self.driver)
        # 输入数据
        kj.tjyh_yx_yhm(name)  # 用户名
        kj.tjyh_kj_yhlb()  # 用户类别
        kj.tjyh_kj_bm()  # 部门
        kj.tjyh_kj_gw()  # 岗位
        # 保存
        kj.tjyh_kj_baocun()
        # 断言
        text = '请输入邮箱'
        self.assertIn(text, kj.tjyh_dy_youxiangweikong())


       # 第15条用例

    def test_tjyh_yx_baocunxinjian(self):
        datas = read_data_from_excel(os.path.join(DATA_PATH, 'datas.xls'), '邮箱添加用户')
        name, email = datas[2]
        gr = IndexPage(self.driver)
        gr.click_geren_btn()
        # 进入组织架构
        zz = OrganizationPage(self.driver)
        zz.zzjg_into()
        # 进入添加用户
        zz.zzjg_tjyh()
        # 跳转邮箱添加
        zz.zzjg_yxtj()
        # 实例化
        yx = AddUserYouxiangPage(self.driver)

        # 输入数据
        yx.tjyh_yx_yhm(name)  # 用户名
        yx.tjyh_kj_yx(email)  # 邮箱
        yx.tjyh_kj_yhlb()  # 用户类别
        yx.tjyh_kj_bm()  # 部门
        yx.tjyh_kj_gw()  # 岗位
        # 保存并新建
        yx.tjyh_kj_baocunbingxinjian()

        # 断言
        text = '添加成功'
        self.assertIn(text, kj.tjyh_yd_cg())



if __name__ == '__main__':
    unittest.main()